www.gusucode.com > 云网互动影视系统(12套模版和资源联盟) 6.2 > 云网互动影视系统(12套模版和资源联盟) 6.2.4/免费版/Users/168regpay/Receive.asp

    <!--#include file="../../conn.asp"-->
<!--#include file="md5char.asp"-->
<%
'为防止用户多次刷新成功页面,使缓存的页面立即过期
Response.expires = 0
Response.expiresabsolute = now() - 1
Response.addHeader "pragma","no-cache"
Response.addHeader "cache-control","private"
Response.cachecontrol = "no-cache"

'您可以充分利用以下反馈信息并添加到您自己的数据库中。
v_orderid=Request("v_orderid")   '贺喜支付平台反馈的定单号
v_orderdate=Request("v_orderdate")   '定单成交时间
v_price=Request("v_price")   '定单成交价格,以分为单位
v_billno=Request("v_billno")   '商户订单号
v_custom1=Request("v_custom1")   '自定义字段1
v_custom2=Request("v_custom2")   '自定义字段2
v_mobileno=Request("v_mobileno")   '用户支付的手机号码
v_servicename=Request("v_servicename")   '支付订单的服务名称
v_payvia=Request("v_payvia")   '用户选择的支付途径,1:银行卡在线支付;2:声讯电话支付;3:互联星空支付;4:手机短信注册;5,腾讯财付通支付;6,腾讯Q币支付;7,神州行充值卡支付;8,盛大游戏点卡支付;9,支付宝支付;10,手机银行支付;11,北京宽带支付
v_payviastr=Request("v_payviastr")   '用户选择的支付途径中文名称
v_md5=Request("v_md5")   '返回的加密字符串
v_pstatus=Request("v_pstatus")   '定单成功反馈的字符串,有1和0两种情况。主要用于验证是否属正常反馈。
v_pstring=Request("v_pstring")   '定单支付状态说明。
v_paymode=Request("v_paymode")   '当前定单运行模式,仅启用测试模式时有效,值为testmode。
custom2 = split(v_custom2,"|")
Set Rs=Server.CreateObject(YWNT_TMS_RS)
sql="select PaySetID,PaySetPassword from YWNT_TMS_PaySet where ID="&custom2(0)
Rs.open sql,Conn,1,1
reg_userid=RS("PaySetID")
paykey=RS("PaySetPassword")
Rs.Close
Set Rs = Nothing
if v_pstatus="1" then
if v_orderid="" or v_orderdate="" or v_price="" or v_md5="" or v_payvia="" then%>
<script language=vbscript>
  MsgBox "非法反馈:反馈的数据不正确!"
  location.href = "/"
</script>
<%Response.end
end if
'以下程序验证返回的加密字符串是否正确
encrypt_string=Ucase(trim(md5(v_orderid&v_billno&v_custom1&v_custom2&v_price&v_payvia&reg_userid&v_pstatus&paykey&v_paymode)))
if v_md5<>encrypt_string then%>
<script language=vbscript>
  MsgBox "致命错误:返回的加密字符串不正确,您是非法提交!"
  location.href = "/"
</script>
<%Response.end
end if
'验证返回的加密字符串是否正确程序结束
if session("reg168_orderid")<>"" then
		if session("reg168_orderid")=v_orderid then%>
		<script language=vbscript>
		  MsgBox "错误:同一定单成交页面不允许多次刷新或提交!"
		  location.href = "../Users_Index.asp"
		</script>
		<%Response.end
		else
			session("reg168_orderid")=v_orderid
		end if
	else
		session("reg168_orderid")=v_orderid
	end if
'将订单支付金额换成以元为单位
payfee=FormatNumber(v_price/100,2,True)

Call PayUsers()
Call PayLog()
	Response.Write("<script>alert('支付成功!定单号为"&v_billno&"');location.href = '../Users_Index.asp';</script>")
else
if v_pstring="" then
	Response.Write("<script>alert('非法提交!');location.href = '/';</script>")
else
	Response.write v_pstring
end if
end if

Sub PayUsers()
Set Rs = server.CreateObject(YWNT_TMS_RS)
sql="select PayType,PayGroup,PayUnit from YWNT_TMS_Pay where ID="&custom2(1)  
Rs.open sql,conn,1,1
PayType=Rs("PayType")
PayGroup=Rs("PayGroup")
PayUnit=Rs("PayUnit")
Rs.close
Set Rs=Nothing
Set Rs = server.CreateObject(YWNT_TMS_RS)
sql="select UsersGroup,UsersType,UsersCoin,UsersCoinDate from YWNT_TMS_Users where UsersName='"&v_custom1&"'"
Rs.open sql,conn,1,3
Select Case PayType
Case 0
Rs("UsersCoin")=Rs("UsersCoin") + PayUnit
Case 1
if Rs("UsersCoinDate")-now()<0 then
  Rs("UsersCoinDate")=now() + PayUnit
else
  Rs("UsersCoinDate")=Rs("UsersCoinDate") + PayUnit
end if
end Select
Rs("UsersGroup")=PayGroup
Rs("UsersType")=PayType
Rs.update
Rs.close
Set Rs=Nothing
End Sub
Sub PayLog()
Set Rs=Server.CreateObject(YWNT_TMS_RS)
sql="select * from YWNT_TMS_PayLog"
Rs.open sql,Conn,1,3
Rs.addnew
RS("UsersName")=v_custom1
RS("orderid")=v_orderid
RS("billno")=v_billno
RS("Payprice")=payfee
RS("PayName")=v_servicename
RS("PayType")=v_payviastr
RS("PayDate")=v_orderdate
Rs.update
Rs.Close
Set Rs = Nothing
End Sub
call connclose()%>